javascript operator precedence